#pragma once
#include <list>
#include "Static.h"
#include <string>
#include <vector>
#include <iostream>
#include <fstream>
#include <cstdlib>
#include <sstream>
#include <string>
#include <stdio.h>
#include <algorithm>

using namespace std;

class BinaryNode{

public:
	list<Static*> listObject;
	RECT rect;	
	BinaryNode *LNode,*RNode;
	string id;

public:
	BinaryNode(void);
	BinaryNode(int left, int top, int right, int bottom, string iid);
	~BinaryNode(void);

	void GetListObj(string ilist,int x, int y);
	void Release();
	void Render();
	void Render(int map_level);
	void Update();
	bool CheckExitsStaticObj(Static *obj);
	
	/*bool CheckExitsObjCanCollide(Static *obj);
	void GetListObjCanCollide();*/
	//void SaveFile();	
};